package com.party.core.service.analysis;

import com.party.common.paging.Page;
import com.party.core.model.analysis.PageListOutput;
import com.party.core.model.analysis.StatisticsPageFlow;
import com.party.core.service.IBaseService;

import java.util.List;
import java.util.Map;

/**
 * @program: party-temp
 * @description: 页面流程接口
 * @author: Huaqunhao
 * @create: 2018-08-01 11:53
 **/
public interface IStatisticsPageFlowService extends IBaseService<StatisticsPageFlow> {
    List<PageListOutput> analysisPage(Map<String, Object> params);

    Integer analysisPageCount(Map<String, Object> params);

    StatisticsPageFlow getNewFlow(String uniqueCode);

    Map<String, Object> getUvAndOutCount(Map<String, Object> params);

    List<StatisticsPageFlow> queryPageBydate(String startDate, String endDate, int pageNum, int pageSize);

    Integer queryPageTotalNumByDate(String startDate, String endDate);


    /**
     * @Description: 通过时间查询页面详情列表
     * @Param:
     * @return:
     * @Author: Hua Qunhao
     * @Date: 2018/12/25
     */
    List<StatisticsPageFlow> queryPageFlowListByDate(String queryDate, Page page);

    /**
     * @Description: 通过时间查询页面详情数量
     * @Param:
     * @return:
     * @Author: Hua Qunhao
     * @Date: 2018/12/25
     */
    int queryPageFlowCountByDate(String queryDate, Integer total);


    /**
     * @Description: 通过时间批量删除页面表数据
     * @Param:
     * @return:
     * @Author: Hua Qunhao
     * @Date: 2019/1/3
     */
    void deletePageFlowByQueryDate(String queryDate, Integer total);
}

